idn2_lookup_ul(3) | libidn2 | idn2_lookup_ul(3) |
NAME¶
idn2_lookup_ul - API function
SYNOPSIS¶
#include <idn2.h>
int idn2_lookup_ul(const char * src, char ** lookupname, int flags);
ARGUMENTS¶
- const char * src
- input zero-terminated locale encoded string.
- char ** lookupname
- newly allocated output variable with name to lookup in DNS.
- int flags
- optional idn2_flags to modify behaviour.
DESCRIPTION¶
Perform IDNA2008 lookup string conversion on domain name src , as described in section 5 of RFC 5891. Note that the input is assumed to be encoded in the locale's default coding system, and will be transcoded to UTF-8 and NFC normalized by this function.
Pass IDN2_ALABEL_ROUNDTRIP in flags to convert any input A-labels to U-labels and perform additional testing. This is default since version 2.2. To switch this behavior off, pass IDN2_NO_ALABEL_ROUNDTRIP
Pass IDN2_TRANSITIONAL to enable Unicode TR46 transitional processing, and IDN2_NONTRANSITIONAL to enable Unicode TR46 non-transitional processing.
Multiple flags may be specified by binary or:ing them together, for example IDN2_ALABEL_ROUNDTRIP | IDN2_NONTRANSITIONAL.
The IDN2_NFC_INPUT in flags is always enabled in this function.
After version 0.11: lookupname may be NULL to test lookup of src without allocating memory.
RETURNS¶
On successful conversion IDN2_OK is returned, if conversion from locale to UTF-8 fails then IDN2_ICONV_FAIL is returned, if the output domain or any label would have been too long IDN2_TOO_BIG_DOMAIN or IDN2_TOO_BIG_LABEL is returned, or another error code is returned.
SINCE¶
0.1
SEE ALSO¶
The full documentation for libidn2 is maintained as a Texinfo manual. If the info and libidn2 programs are properly installed at your site, the command
- info libidn2
should give you access to the complete manual. As an alternative you may obtain the manual from:
2.2.0 | libidn2 |